home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2007 January, February, March & April
/
Chip-Cover-CD-2007-02.iso
/
Pakiet bezpieczenstwa
/
mini Pentoo LiveCD 2006.1
/
mpentoo-2006.1.iso
/
livecd.squashfs
/
usr
/
lib
/
python2.4
/
lib-old
/
grep.pyc
(
.txt
)
< prev
next >
Wrap
Python Compiled Bytecode
|
2005-10-18
|
3KB
|
107 lines
# Source Generated with Decompyle++
# File: in.pyc (Python 2.4)
import regex
from regex_syntax import *
opt_show_where = 0
opt_show_filename = 0
opt_show_lineno = 1
def grep(pat, *files):
return ggrep(RE_SYNTAX_GREP, pat, files)
def egrep(pat, *files):
return ggrep(RE_SYNTAX_EGREP, pat, files)
def emgrep(pat, *files):
return ggrep(RE_SYNTAX_EMACS, pat, files)
def ggrep(syntax, pat, files):
global opt_show_filename
if len(files) == 1 and type(files[0]) == type([]):
files = files[0]
opt_show_filename = len(files) != 1
syntax = regex.set_syntax(syntax)
try:
prog = regex.compile(pat)
finally:
syntax = regex.set_syntax(syntax)
for filename in files:
fp = open(filename, 'r')
lineno = 0
while None:
line = fp.readline()
if not line:
break
lineno = lineno + 1
if prog.search(line) >= 0:
showline(filename, lineno, line, prog)
continue
fp.close()
def pgrep(pat, *files):
global opt_show_filename
if len(files) == 1 and type(files[0]) == type([]):
files = files[0]
opt_show_filename = len(files) != 1
import re as re
prog = re.compile(pat)
for filename in files:
fp = open(filename, 'r')
lineno = 0
while None:
line = fp.readline()
if not line:
break
lineno = lineno + 1
if prog.search(line):
showline(filename, lineno, line, prog)
continue
fp.close()
def showline(filename, lineno, line, prog):
if line[-1:] == '\n':
line = line[:-1]
if opt_show_lineno:
prefix = `lineno`.rjust(3) + ': '
else:
prefix = ''
if opt_show_filename:
prefix = filename + ': ' + prefix
print prefix + line
if opt_show_where:
(start, end) = prog.regs()[0]
line = line[:start]
if '\t' not in line:
prefix = ' ' * (len(prefix) + start)
else:
prefix = ' ' * len(prefix)
for c in line:
if c != '\t':
c = ' '
prefix = prefix + c
if start == end:
prefix = prefix + '\\'
else:
prefix = prefix + '^' * (end - start)
print prefix